Apparatus for fastening an imaging device at a predetermined arrangement for image capture and detecting regions of interest in an image using image processing

ABSTRACT

An apparatus includes a base; a mount attached to the base, the mount including a backplate, a bottom platform formed perpendicular to the backplate along a bottom of the backplate, the bottom platform including a retention wall formed as part of the bottom platform distant from the portion of the bottom platform attached to the backplate, the retention wall being perpendicular to the bottom platform, and a first side arm formed as part of the backplate along a side of the backplate and extending outwards from the backplate, and a notch holder formed as part of the base, the notch holder configured to secure a drug test device to the base.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims priority to U.S. Provisional ApplicationNo. 63/233,034, filed Aug. 13, 2021, the entire content of which isincorporated by reference herein in its entirety for all purposes.

FIELD OF THE DISCLOSURE

The present disclosure relates to an apparatus for fastening an imagingdevice and detecting regions of interest in an image.

DESCRIPTION OF THE RELATED ART

Capturing an image or video of an object can be challenging when animage capture device can be oriented freely during image capture.Further, detecting regions of interest in the captured image can haveits challenges.

The foregoing description is for the purpose of generally presenting thecontext of the disclosure. Work of the inventors, to the extent it isdescribed in this background section, as well as aspects of thedescription which may not otherwise qualify as prior art at the time offiling, are neither expressly or impliedly admitted as prior art againstthe present disclosure.

SUMMARY

According to an embodiment, the present disclosure relates to a deviceincluding a base; a mount attached to the base, the mount including abackplate, a bottom platform formed perpendicular to the backplate alonga bottom of the backplate, the bottom platform including a retentionwall formed as part of the bottom platform distant from the portion ofthe bottom platform attached to the backplate, the retention wall beingperpendicular to the bottom platform, and a first side arm formed aspart of the backplate along a side of the backplate and extendingoutwards from the backplate, and a notch holder formed as part of thebase, the notch holder configured to secure a drug test device to thebase.

The foregoing paragraphs have been provided by way of generalintroduction and are not intended to limit the scope of the followingclaims. The described embodiments, together with further advantages,will be best understood by reference to the following detaileddescription taken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic of a drug test device that can provide anon-invasive drug screening process, according to an embodiment of thepresent disclosure.

FIG. 2 is a schematic illustrating the drug test device includingresults of a drug test displayed on the drug strip, according to anembodiment of the present disclosure.

FIG. 3 is a schematic illustrating a zoomed and cropped region of thedrug strip, according to an embodiment of the present disclosure.

FIG. 4 shows images of results on the drug strip, according to anembodiment of the present disclosure.

FIG. 5 is an optical image of the drug test device including one versionof the label, according to an embodiment of the present disclosure.

FIG. 6 is an optical image of the drug test device with predeterminedregions located, according to an embodiment of the present disclosure.

FIG. 7 is an optical image of the drug test device including one versionof the label, according to an embodiment of the present disclosure.

FIG. 8 is an optical image of the drug test device with predeterminedregions located, according to an embodiment of the present disclosure.

FIG. 9 is an optical image of the drug test device including one versionof the label, according to an embodiment of the present disclosure.

FIG. 10 is an optical image of the drug test device with predeterminedregions located, according to an embodiment of the present disclosure.

FIG. 11 shows an example of image thresholding to locate a predeterminedletter in the label under acceptable lighting conditions, according toan embodiment of the present disclosure.

FIG. 12 shows an example of image thresholding to locate a predeterminedletter in the label under improper lighting conditions, according to anembodiment of the present disclosure.

FIG. 13 shows an example of using the label location to reduce thesearch area for the QR code, according to an embodiment of the presentdisclosure.

FIG. 14 shows an example of an image before Sobel Operator subtraction,according to an embodiment of the present disclosure.

FIG. 15 shows an example of an image after Sobel Operator subtraction,according to an embodiment of the present disclosure.

FIG. 16 shows an example of a result of locating the bar code andidentifying the bar code as a white shape, according to an embodiment ofthe present disclosure.

FIG. 17 is a histogram of pixel values detected in the drug strip,according to an embodiment of the present disclosure.

FIG. 18 shows an example of using histogram data and an iterative methodto find threshold values that will highlight the drug strip, accordingto an embodiment of the present disclosure.

FIG. 19 shows an example of histogram data for individual drug strips,according to an embodiment of the present disclosure.

FIG. 20 shows an example of using the slope of the RGB values curve toidentify the location of the colored stripes in the drug test strips,according to an embodiment of the present disclosure.

FIG. 21A is a schematic of a screening apparatus, according to anembodiment of the present disclosure.

FIG. 21B is a schematic of a screening apparatus from a secondperspective, according to an embodiment of the present disclosure.

FIG. 22A is a schematic of the device stand, according to an embodimentof the present disclosure.

FIG. 22B is a schematic of the device stand having the processing deviceand drug test device 100 inserted therein, according to an embodiment ofthe present disclosure.

FIG. 23 is an exemplary flow chart of a method described herein,according to an embodiment of the present disclosure.

FIG. 24 is a schematic of a user device for performing a method,according to an exemplary embodiment of the present disclosure.

FIG. 25 is a schematic of a hardware system for performing a method,according to an exemplary embodiment of the present disclosure.

FIG. 26 is a schematic of a hardware configuration of a device forperforming a method, according to an exemplary embodiment of the presentdisclosure.

DETAILED DESCRIPTION

The terms “a” or “an”, as used herein, are defined as one or more thanone. The term “plurality”, as used herein, is defined as two or morethan two. The term “another”, as used herein, is defined as at least asecond or more. The terms “including” and/or “having”, as used herein,are defined as comprising (i.e., open language). Reference throughoutthis document to “one embodiment”, “certain embodiments”, “anembodiment”, “an implementation”, “an example” or similar terms meansthat a particular feature, structure, or characteristic described inconnection with the embodiment is included in at least one embodiment ofthe present disclosure. Thus, the appearances of such phrases or invarious places throughout this specification are not necessarily allreferring to the same embodiment. Furthermore, the particular features,structures, or characteristics may be combined in any suitable manner inone or more embodiments without limitation.

FIG. 1 is a schematic of a drug test device 100 that can provide anon-invasive drug screening process, according to an embodiment of thepresent disclosure. In an embodiment, the drug test device 100 includesa bottle 105 for receiving the saliva swab 120. In an embodiment, thedrug test device 100 is a container. The drug test device 100 caninclude drug strips 110 disposed in a chamber 115 of the bottle 105 fortesting the presence of a drug or chemical. The drug test device 100 canalso include a saliva swab 120. The saliva swab 120 can include anabsorbent pad 125, such as a sponge or porous strip, disposed at a firstend of the saliva swab 120. The absorbent pad 125 need not be absorbentnor a pad, and instead can be a reservoir configured to collect salivavia scooping, suction, or adhesion. A second end of the saliva swab 120can include a cap 130 configured to couple with an opening of the bottle105. For example, the opening of the bottle 105 can include a threadedportion 135 and the cap 130 can include a threaded inner skirt 140configured to twistably engage the threaded portion 135 of the bottle105. The cap 130 can be configured to lock after coupling with thebottle 105 such that the cap 130 cannot be removed from the bottle 105once the cap 130 has locked onto the bottle 105. The first end and thesecond end of the saliva swab 120 can be connected via a stem, whereinthe stem 145 is an elongated staff having sufficient length to disposethe first end with the attached absorbent pad 125 proximal to a bottomof the bottle 105 when the cap 130 is coupled to the bottle 105. Theelongated stem 145 can also facilitate easier acquisition of saliva froma mouth, wherein the saliva can be pooled towards the back of the mouth.

The drug test device 100 can include, for example, 10 drug strips 110 inthe chamber 115 for drug testing. Each strip of the drug strips 110,after exposed to an applicant's saliva, can return a NEGATIVE, POSITIVE,or INVALID result to indicate the presence (or lack thereof) of apredetermined drug. Notably, a portion of the bottle 105 can betransparent and provide a view of the drug strips 110 included therein.For example, the bottle 105 can be made of a clear polymer and have aflat surface along a wall of the chamber 115. The drug strips 110 can bearranged proximal to the flat surface along the wall of the chamber 115.Each drug test strip can test for a different predetermined drug. Forexample, a first drug test strip can test for marijuana (i.e., thechemical tetrahydrocannabinol (THC)), a second drug test strip can testfor cocaine, a third drug test strip can test for methamphetamine, and afourth drug test strip can serve as a control. By using a webcam incombination with a software application on a processing device, theresults for all the drug test strips can be scanned and viewed. Thismethod (executed by (processing circuitry of) the processing device 2100of FIG. 21A) will be discussed below with reference to additionalfigures and description.

Described herein is a method that automatically reads and accuratelydetermines the results displayed on each strip of the drug strips 110.To this end, FIG. 2 is a schematic illustrating the drug test device 100including results of a drug test displayed on the drug strips 110,according to an embodiment of the present disclosure. FIG. 3 is aschematic illustrating a zoomed and cropped region of the drug strips110, according to an embodiment of the present disclosure. The methodcan provide robust results in any lighting environment since the drugtest device 100 can be deployed in any location with variable lightingconditions. That is, the method can provide robust results even in anenvironment where the results of the drug strips 110 are imaged with lowlight. The method can be browser-based (i.e., performed on a web-browserof the processing device 2100) to cut down on bandwidth costs and tofacilitate easier enhancement in the future. The method can also beperformed remotely—for example, at a server or a device external to theprocessing device 2100, or be distributed such that some of theprocesses are performed on the processing device 2100 side while otherprocesses are performed on the server side.

The method can use landmarks on the drug test device 100 to locate thedrug strips 110 (or a single drug strip). After the user has insertedthe saliva swab 120, the drug strips 110 can generate a result based oncontents of the user's saliva and display the result using a series oflines. The results can be displayed as colored lines, such as red lines,on white strips. In an embodiment, the lines can be black. The methodthen detects and reads the colored lines to classify each strip of thedrug strips 110 of the drug test device 100.

The method of identifying the test strip region and generating a resultof the drug test can include locating a label 150 on the drug testdevice 100. The label 150 can include, but is not limited to, a barcode, a QR code, the drug strips 110 region, a single drug test strip,edges of features visible to the camera on the drug test device 100,shapes on the label, regions on the label 150 having predeterminedbrightness or color, and other such patterns. The aforementionedfeatures on the label 150 can be considered landmarks. The label 150itself can be considered the landmark as well. The method of identifyingthe test strip region and generating the result of the drug test canfurther include locating the QR code on the label 150 of the drug testdevice 100, locating the bar code on the label 150 of the drug testdevice 100, locating the drug strips 110 region visible from outside thedrug test device 100, locating the drug strips 110 in the drug strips110 region, detecting a result on the drug test strip, and generating aresult based on the result of the drug test strip.

FIG. 4 shows images of results on the drug strips 110, according to anembodiment of the present disclosure. Each strip can be read as follows:a NEGATIVE , POSITIVE, or INVALID result. A NEGATIVE result can becomprised of 2 colored stripes (or strips, or lines, or markers), aPOSITIVE result can be comprised of a first stripe disposed near a topof the drug test strip and not include a second stripe disposed near amiddle or bottom of the drug test strip, and an INVALID result can becomprised of a completely blank drug test strip or include only thesecond stripe disposed near a middle or bottom of the drug test stripwithout including the first stripe disposed near the top. It may beappreciated that other patterns of the stripes and combinations ofhaving a predetermined number of drug strips 110 can be used to indicatethe aforementioned results.

To read the drug strips 110, the method can use dimensions and detailsabout the label 150 on the drug test device 100 to locate the drugstrips 110 region including the drug strips 110. This can reduce thesearch area for the drug strips 110 and increase the accuracy of thesearch. After isolating each strip of the drug strips 110, the methodcan then search for individual colored result stripes to generate theevaluation. For successful scanning, the method can perform each ofthese steps with high confidence. Each step is discussed in detailherein.

In an embodiment, there can be multiple solutions and techniques thatcan be utilized to isolate the line region. Myriad methods are describedherein, each with their own specific label 150 and flow. An imageprocessing engine can be designed as a state machine. An imaging processcan be comprised of a series of imaging steps. Each imaging step can beimplemented by a class with a predefined interface. The flow for eachmethod will be discussed below and a separate section will be used todiscuss the specifics for each imaging step.

FIG. 5 is an optical image of the drug test device 100 including oneversion of the label 150, according to an embodiment of the presentdisclosure. In an embodiment, a subset of the drug test devices 100deployed in the field can include the label 150 including the bar code,wherein the bar code includes a plurality of lines having apredetermined thickness and spacing, and is disposed underneath the drugstrips 110 region location. The bar code can be approximately 6/7 thewidth of the drug strips 110 region and ⅓ the height of a line bar. Byutilizing these known dimensions and the unique characteristics of thebar code, the method can, with high confidence, locate the drug strips110 region that includes all of the drug strips 110. Once the drugstrips 110 region is located, the drug strips 110 can be located toisolate each strip of the drug strips 110 for result detection.

To this end, FIG. 6 is an optical image of the drug test device 100 withpredetermined regions located, according to an embodiment of the presentdisclosure. First, the label 150 can be located. Then, the bar code canbe located. Then, the drug strips 110 region can be located. Then, thetarget drug test strip can be located in the drug strips 110 region.Finally, the result of the drug test strip (i.e., the appearance of thestripes on the strip) can be detected.

FIG. 7 is an optical image of the drug test device 100 including oneversion of the label 150, according to an embodiment of the presentdisclosure. In an embodiment, a large number of the drug test device100s deployed in the field can have the label 150 including the bar codedisposed underneath the “Premier Biotech” logo. This can prevent themethod (and the processing device 2100 performing the method) fromlocating the relevant features. Thus, modifications can be made forlocating the drug strips 110 region.

Instead of the bar code, the method can be modified to locate the QRCode first. To this end, FIG. 8 is an optical image of the drug testdevice 100 with predetermined regions located, according to anembodiment of the present disclosure. In an embodiment, the label 150can be located first. Then, the QR code can be located. Then, the drugstrips 110 region can be located. Then, the target drug test strip canbe located in the drug strips 110 region. Finally, the result of thedrug test strip (i.e., the appearance of the stripes on the strip) canbe detected.

FIG. 9 is an optical image of the drug test device 100 including oneversion of the label 150, according to an embodiment of the presentdisclosure. In an embodiment, the drug test device 100 can include alabel 150 for improved landmark detection under varying lightingconditions. The label 150 can include redundant landmarks that can beused as fallback strategies during the method execution. The landmarkscan be, for example, the dot with the circle circling the dot. A colorof the landmark can be selected such that contrast between the landmarkand the background color upon which the landmark is disposed is high.

To this end, FIG. 10 is an optical image of the drug test device 100with predetermined regions located, according to an embodiment of thepresent disclosure. First, the label 150 can be located. Then, the drugstrips 110 region was located. Then, the target drug test strip waslocated in the drug strips 110 region. Finally, the result of the targetdrug test strip (i.e., the appearance of the stripes on the drug teststrip) was detected.

Described herein are imaging methods.

The method can be implemented using an engine incorporating a statemachine design pattern. Any version of the method can be comprised of anarray of imaging steps which are each executed sequentially. Eachindividual step can save metadata to an object, such as an ImageDataobject, that is passed to each subsequent step. Not all steps can beutilized for each version of a method. Refer to the previously describedmethods for a particular version of the label 150 that can correspond towhich steps are executed. The design pattern can be selected forflexible interchanging of imaging steps, easier maintenance, and easiervisualization.

Each step can be focused on locating the predetermined landmark(s). Inan embodiment, the coordinates of the landmark as well as knownproperties of the landmark can then be used to reduce the search areafor future landmarks. This can be done to increase the accuracy andconfidence for detecting other landmarks.

Each imaging step can use a multitude of techniques to locate the targetlandmark. Described herein are some of the techniques used.

Contour Detection: a contour can be a curve joining all continuouspoints (along the boundary) having the same color or intensity. Contourdetection can be used for object detection. For better results, an imagecan be converted to a binary format. Each pixel in the image can eitherhave a value of 0 or 255 (black/white respectively). Conversion to abinary format can be performed by applying a threshold to an image.

Image Thresholding: for global image thresholding, a threshold value canbe used to determine which pixels in an image are converted to white(255) and which pixels are converted to black (0). If the pixel value isgreater than the threshold value, then the pixel is set to 255. If not,the pixel is set to 0. In an embodiment, increasing the threshold valuereduces the number white pixels generated. In an embodiment, the inversecan be performed, wherein if the pixel value is greater than thethreshold value, then the pixel is set to 0.

Described herein are methods of label 150 locating.

In an embodiment, since the outer dimensions of perimeter and thedimensions of the “Oral Tox” logo (as shown in the Figures) are known,the approximate location of the label 150 within the image can be found.This can be performed by focusing the contour search on the letter O'sof the “Oral Tox” text in the label 150.

To this end, FIG. 11 shows an example of image thresholding to locate apredetermined letter in the label 150 under acceptable lightingconditions, according to an embodiment of the present disclosure.Moreover, FIG. 12 shows an example of image thresholding to locate apredetermined letter in the label 150 under improper lightingconditions, according to an embodiment of the present disclosure. In anembodiment, each “O” in the logo can have the unique characteristic ofan elliptical contour located within another elliptical contour. Animage threshold can be applied and then contours can be detected. Eachcontour can be analyzed for circularity and sorted in descending order.The circularity can be given as:

$C = {4\pi\frac{A}{P^{2}}}$

where C=circularity, A=area, and P=perimeter. The circularity of acontour approaches 1 the closer it is to a circle. The top candidates,for example, the top ten candidates can be evaluated for internalellipses. For example, the two largest candidates can be considered theO's. This is because the squares of the QR code may also detected.Calculations can be performed to determine an outer perimeter of thelabel.

Described herein are methods of QR code detection.

To this end, FIG. 13 shows an example of using the label 150 location toreduce the search area for the QR code, according to an embodiment ofthe present disclosure. In an embodiment, QR Code detection can beperformed by converting the image to a monochrome image format. Theimage is then cropped to the region found by a label 150 localizationprocess. The region can then be further cropped to the top-rightquadrant of the label 150 (see FIG. 13 , left). This can reduce thesearch area and increase the detection rate. From there a QR codescanner, such as OpenCV, can detect the QR Code. If a first QR codescanner fails, a second (custom-built) QR Code scanner can be used. Thisscanner can use contour detection, thresholding, and circularitypreviously described to locate the label 150 to detect the 3 square QRcode landmarks. Once these are located, coordinates for the landmarkscan be saved.

Described herein are methods of bar code detection.

To this end, FIG. 14 shows an example of an image before Sobel Operatorsubtraction, according to an embodiment of the present disclosure. FIG.15 shows an example of an image after Sobel Operator subtraction,according to an embodiment of the present disclosure. In an embodiment,bar code detection can be performed as follows:

First, a similar method to locate the label 150 via cropping can beperformed to crop the image. Next, the image can be resized, such asresized to a width of 480 pixels, for consistent processing acrosssamples. Next, Sobel filters can be applied in x- and y-directions.Next, both results can be subtracted to make it easier for bar codedetection. Next, blurring can be applied. Next, a threshold can beapplied. Next, a morphology can be applied that fills in all contours.Next, an expansion and erode morphology can be applied to attempt tocreate a single white rectangle where the bar code is located.

Described herein are methods of strip region localization.

To this end, FIG. 16 shows an example of a result of locating the barcode and identifying the bar code as a white shape, according to anembodiment of the present disclosure. In an embodiment, drug strips 110region localization can use coordinates of other landmarks to find anapproximate region that envelops all drug strips 110. This can be usedto reduce the search area for high confidence detection.

Using QR Code: locating the drug strips 110 region can use thecoordinates of the aforementioned methods that located the label 150 andthe QR code. The perimeter of the located label 150 can coincide withleft and right edges of the drug strips 110 region. An approximation ofthe drug strips 110 region height and location can be performed by usingthe QR Code top-left coordinate and QR Code height.

X_(STRIP REGION)=X_(LABEL)

Y _(STRIP REGION) =Y _(QR CODE)+Height_(QR CODE) +ΔY

Width_(STRIP REGION)=Width_(LABEL)

Height_(STRIP REGION) =Y _(QR CODE)+Height_(QR CODE) +ΔY

Using Bar Code: locating the drug strips 110 region using the bar codelocation method can be similar to locating the drug strips 110 regionusing the QR code location method. In this case, the bar code for afirst label 150 version can be directly under the drug strips 110region. The coordinate of the bar code can then be used to interpolatethe drug strips 110 region.

X_(STRIP REGION)=X_(LABEL)

Y _(STRIP REGION) =Y _(BARCODE)−3*Height_(BARCODE)

Width_(STRIP REGION)=Width_(LABEL)

Height_(STRIP REGION)=3*Height_(BARCODE)

Using Bar Code (with a second label 150 version): landmarks are used ina second version of the label 150. The circles can mark the top andbottoms of the first and last drug test strips in the drug strips 110region. The black squares can represent the location of every other drugtest strip. The gradient can be removed for easier top detection, anddark black lines can be added to distinguish the drug strips 110 regionfrom the rest of the label 150.

The method of locating the label 150 can be used to reduce the searcharea, then a contour search can be performed for the 4 circles usingcircularity. If not found, a scan searching for the black lines can beperformed. Once 3 out of 6 landmarks are found, a warp perspective canbe applied (i.e., the image can be distorted) to obtain a bird's eyeview of the picture (i.e., a view of the picture wherein thekeystone-like shape due to the camera perspective is corrected for).

Described herein are methods of strip localization.

In an embodiment, locating the drug strips 110 can include isolating anddistinguishing each drug test strip within the drug strips 110 region.This can be performed using image thresholding.

First, the image can be converted to grayscale by applying a red-bluechannel subtraction. Next, a histogram of this grayscale image can begenerated. Next, the local minimum between the two rightmost relativemaxima can be determined. Data has shown that many sample histogramslook similar to the example in FIG. 17 .

Described herein are methods of strip result detection.

To this end, FIG. 17 shows an example of using histogram data to findthreshold values that will highlight the drug strips 110, according toan embodiment of the present disclosure. In an embodiment, onceisolated, a drug test strip can be scanned and analyzed. Using histogramdata for the average pixel value of each row in a strip, a pattern canbe determined to identify the colored result stripes. For example, thedrug test strip can be comprised of near- white values and the resultstripes can be comprised of a variation of a red hue.

FIG. 18 shows an example of using histogram data and an iterative methodto find threshold values that will highlight the drug strips 110,according to an embodiment of the present disclosure. In an embodiment,using RGB color values, the histogram data for each channel can bemapped. A result line can be identified by a significant drop in meanvalues for all 3 (primary) color channels. The biggest discrepancy canbe seen in a green channel of the 3 color channels. Although thethreshold values can be used to determine the locations of the coloredstripes, there can still be the problem of noise in the histogram data.To work around this, a graph of the slope for the green channel RGBvalues (derivative) can be created (see FIG. 19 ).

To this end, FIG. 19 shows an example of histogram data for individualdrug strips 110, according to an embodiment of the present disclosure.In an embodiment, the graph of the slope for the green channel RGBvalues can include distinguishing features. As the x-value increases,the y-value drops to a local minimum, then continually increases (withno decrease) until a local maximum is reached. The y-value thendecreases as it approaches 0. Since background noise values are close tozero, a scale factor can be applied that enhances the signal for thesegraphs with negligible increase to noise amplitudes.

FIG. 20 shows an example of using the slope of the RGB values curve toidentify the location of the colored stripes in the drug strips 110,according to an embodiment of the present disclosure. In an embodiment,the point where these identifying graphs of the slopes cross zero alsomark the exact y-coordinate of the colored stripe detected (refer toFIG. 20 for an example).

A method of screening an applicant is described herein. To this end,FIG. 21A is a schematic of a screening apparatus, according to anembodiment of the present disclosure. FIG. 21B is a schematic of ascreening apparatus from a second perspective, according to anembodiment of the present disclosure. In an embodiment, the applicantarrives at a screening location (recruiting center). Then, a badge photois created. Then, the applicant information can be verified. Then, theapplicant can go through the drug screening process. Then, the resultsof the drug test from the drug screening process can be confirmed anddisplayed. Before the applicant enters, each station at the screeninglocation can include the screening apparatus, including the drug testdevice 100, a processing device 2100, a device stand 2105 to hold theprocessing device 2100, a mirror, a PMV (Process Map Visual), andcleaning supplies.

FIG. 22A is a schematic of the device stand 2105, according to anembodiment of the present disclosure. FIG. 22B is a schematic of thedevice stand 2105 having the processing device 2100 and drug test device100 inserted therein, according to an embodiment of the presentdisclosure. The device stand 2105 can include a base and a mount 2110attached to the base configured to couple with the processing device2100. For example, the processing device 2100 is a tablet and the mount2110 has dimensions substantially similar to dimensions of the tablet tofasten the tablet to the mount 2110 and thereby to the device stand2105. In an embodiment, the mount 2110 can include a bottom platform2115 and a first side arm 2120. Additionally, the mount 2110 can includea second side arm. A distance separating the first side arm 2120 and thesecond side arm can be slightly wider than a width of the tablet. Thebottom platform 2115 can be formed perpendicular to a backplate 2125along a bottom of the backplate 2125, the bottom platform 2115 includinga retention wall formed as part of the bottom platform 2115 distant fromthe portion of the bottom platform 2115 attached to the backplate 2125,the retention wall being perpendicular to the bottom platform 2115.

The tablet can be inserted into the mount 2110, where a first surface ofthe tablet will slide down the mount 2110 along the backplate 2125 untila first edge of the tablet abuts the bottom platform 2115, and the firstside arm 2120 and the second side arm prevent the tablet from movinglaterally. The first surface can be, for example, a back surface of thetablet, such that an opposite front surface having a display or screenfaces the applicant or user. The retention wall can prevent the firstedge of the tablet from sliding off the bottom platform 2115. In anembodiment, the second side arm is not included in the mount 2110 andthe tablet can be inserted into the mount 2110, where the tablet willslide down the mount 2110 until the bottom of the tablet abuts thebottom platform 2115, then the tablet is translated laterally until asecond edge of the tablet abuts the first side arm 2120, the second edgebeing perpendicular to the first edge. As shown, the bottom platform2115 can be split into two platforms and the backplate 2125 of the mount2110 includes a cutout that extends through the bottom platform 2115 toallow easy removal of the tablet by pushing the tablet up from theexposed portion of the tablet in the cutout. The cutout can also allow acamera disposed along a center of the tablet to be exposed. For tabletshaving the camera disposed along a corner of the tablet, the camera ofthe tablet will not be obstructed by the bottom platform 2115 beingslightly narrower than the width of the tablet. Such a fastening systemcan secure the tablet while keeping the display relatively free ofobstructions when viewed by the applicant.

The mount 2110 of the device stand 2105 can couple the processing device2100 while also angling the processing device 2100 at a predeterminedangle to face the display of the processing device 2100 towards theapplicant. The predetermined angle of the processing device 2100 coupledto the mount 2110 can also provide a fixed angle for a camera of theprocessing device 2100 to face in an opposite direction of the display.Furthermore, the device stand 2105 can include a notch 2130 or holderconfigured to receive the drug test device 100. In an embodiment, thenotch 2130 can be a hollow recess and a cross-sectional shape of thehollow portion can be substantially similar to a cross-sectional shapeof the drug test device 100 such that the drug test device 100 can bearranged into the notch 2130. For example, the drug test device 100 canbe slid or dropped into the notch 2130. The hollow portion may obstructa portion of the drug test device 100, such as the label 150 on the drugtest device 100.

As such, in an embodiment, the notch 2130 can have a similar fasteningmethod as the mount 2110 and allow the user to slide the drug testdevice 100 into the notch 2130. Such a fastening method (i.e., having abottom platform 2115 and side arms or lateral movement restrictors) canreduce any obstruction that may arise due to a sidewall of theaforementioned hollow notch 2130 blocking the label. Moreover, in anycase, the notch 2130 can also angle the drug test device 100 at apredetermined angle to facilitate image capture of the label 150 via thecamera on the processing device 2100. Additionally, the device stand2105 can include a light source 2135 for assisting in image capture whenthe lighting environment of the screening location is poor, such asbeing too dim. The light source 2135 can be integrated into a structureof the device stand 2105. The light source 2135 can be disposed on aside of the mount 2110 more closely aligned with a position of the notch2130, and eventually the drug test device 100 received therein. In anembodiment, the light source 2135 is disposed on the first side arm2120. Notably, an angle of the light source 2135 can match that of theangle of the mount 2110. In an embodiment, the light source 2135 can beattached to or formed as part of the first side arm 2120 having anintegrated angle adjustment rotation drum configured to allow a user torotate the drum and thus the angle of the light source 2135 to reduceany potential glare from a direct reflection back into the camera of thetablet. The light source 2135 can be powered via an external powersource. In an embodiment, the angle and power of the light source 2135can be controlled remotely by an operator. The operator can adjust anintensity of the light source 2135 by adjusting the power to the lightsource 2135. The operator can also adjust the angle of the light source2135 by adjusting the angle adjustment rotation drum, which can includea motor or servo configured to receive power from the external powersource or any power source described herein. In an embodiment,instructions can be sent by the remote operator to the processing device2100 to adjust the angle and power of the light source 2135 viaregulating the power to the light source and actuating the motor of theangle adjustment rotation drum to which the light source 2135 isattached or formed thereon.

The tablet can similarly be powered via the external power source. Inthe event the light source 2135 and the tablet include internalrechargeable batteries, the external power source can charge (i.e.,power) the internal batteries. The external power source can be, forexample, a wall outlet. In an embodiment, the device stand 2105 can beelectrically connected to the external power source and the device stand2105 can include circuitry to divert power to any device electricallyconnected to the device stand 2105. For example, the light source 2135can be wired to the structure of the device stand 2105 via the circuitryand the tablet can couple to a charging dock integrated into the bottomplatform 2115 of the mount 2110 that is connected to the circuitry. Assuch, cable clutter can be reduced. In an embodiment, the device stand2105 can include an internal battery that can be charged and configuredto power the tablet and the light source 2135 during deployment in thescreening location. Notably, the light source 2135 can be configured toactivate when the camera of the processing device 2100 obtains an imageof the drug test device 100.

In an embodiment, the applicant can be pre-registered, such as via abatch order process. In an embodiment, the batch order process includesobtaining a batch template, entering data into fields of the batchtemplate, uploading the batch template (spreadsheet), and reviewing theuploaded batch templates for accuracy and errors.

In an embodiment, the applicant may not be pre-registered, and may be awalk-in to the screening location. For such an applicant, the applicantcan be processed with a modified process.

In an embodiment, the applicant can arrive at a station in the screeninglocation. The station can include the device stand 2105 holding theprocessing device 2100, wherein the device stand 2105 is affixed to asurface, such as a kiosk. The applicant can interact with the processingdevice 2100 to begin the drug screening process. For example, theapplicant can press an icon, such as a play button, displayed on adisplay of the processing device 2100 to start the drug screeningprocess. The applicant can then follow prompts including text-basedinstructions displayed by the processing device 2100 to step through thedrug screening process. Steps can include inputting predetermined datarelated to the applicant for identification (ID) verification, providinga signature for consenting to the drug screening process, and followinginstructions to use the drug test device 100. The prompts can beaccompanied by audio instructions output by the processing device 2100.

In an embodiment, at a first screen (after an initial screen includingthe play button), the processing device 2100 can display fields for theapplicant to enter ID information. The on-screen instructions can be,for example, “Let's get started!” A script for the audio instructionscan be, for example, “Let's get your drug test started. This should take7-10 minutes. Enter your last name, date of birth and booth number.Booth number is posted nearby.” An audio file for the correspondingaudio instructions can be stored on the processing device 2100 or aserver.

In an embodiment, at a second screen, the processing device 2100 candisplay the input ID information and request the applicant to confirmthe input ID information by pressing a button to confirm, or pressinganother button to edit the input ID information. The on-screeninstructions can be, for example, “Review your information. Make sure wehave your phone number correct.” A script for the audio instructions canbe, for example, “Is this your preferred contact number? Tap the editbutton if not.” An audio file for the corresponding audio instructionscan be stored on the processing device 2100 or a server.

In an embodiment, at a third screen, the processing device 2100 candisplay a consent statement to use an electronic signature and requestthe applicant to use their finger to input an electronic signature toconfirm their consent. The on-screen instructions can be, for example,“Consent to use Electronic Signature.” and/or “Consent to Drug ScreeningProcess.” A script for the audio instructions can be, for example,“Review the information and provide your consent for your drug testprocess. Using your finger, sign your name and tap next.” An audio filefor the corresponding audio instructions can be stored on the processingdevice 2100 or a server.

In an embodiment, at a fourth screen, the processing device 2100 candisplay instructions to prepare the drug test device 100. The on-screeninstructions can be, for example, “Open the pouch. Take the device outof the pouch and place it upright on the table. You may now throw thepouch in the trash.” A script for the audio instructions can be, forexample, “Locate the silver pouch on the table in front of you. Tearopen the pouch using the notches on the side or top, place the deviceupright on the table leaving the swab in the device.” An audio file forthe corresponding audio instructions can be stored on the processingdevice 2100 or a server.

In an embodiment, at a fifth screen, the processing device 2100 candisplay instructions to prepare the applicant for the drug test device100. The on-screen instructions can be, for example, “Pool saliva inyour mouth. Think of your favorite food. Pool saliva in your mouth. Themore the better. If you don't provide enough of a sample you will haveto re-take the test.” A script for the audio instructions can be, forexample, “This drug test will use your saliva. Take a few moments topool saliva in your mouth. You may use the side of your cheek to storethe saliva. If it helps, think of your favorite food. The more thebetter. If you don't provide enough of a sample you will have to re-takethe test.” An audio file for the corresponding audio instructions can bestored on the processing device 2100 or a server.

In an embodiment, at a sixth screen, the processing device 2100 candisplay instructions to use the saliva swab 120 of the drug test device100. The on-screen instructions can be, for example, “Collect theSample. Insert the sponge in your mouth once you pool the saliva. Soakthe sponge in your mouth to saturate. The more the better. Using themirror, check to see if the indicator strip turns red. DO NOT remove theswab until the indicator appears. This may take approximately 2minutes.” A script for the audio instructions can be, for example,“Leave the container upright on the table at all times. Insert thesponge into your mouth. Saturate the sponge with your saliva. DO NOTsuck on the sponge. This will take some time. When the timer ends, usethe mirror provided to look for a red indicator on the stick of thesponge. If it is not red, pool more saliva and wait. [Pause 90 secs]. DONOT remove the swab until the indicator appears. I would like toemphasize, DO NOT remove the swab until the indicator appears.” Theaudio instructions can pause in the middle of the script, whereindicated with brackets. An audio file for the corresponding audioinstructions can be stored on the processing device 2100 or a server.

In an embodiment, at a seventh screen, the processing device 2100 candisplay instructions to insert the saliva swab 120 into the drug testdevice 100. The on-screen instructions can be, for example, “InsertSwab. Hold the device with one hand while it remains upright on thetable. Insert the swab into the device and press down while twisting thecap closed.” A script for the audio instructions can be, for example,“Remove the sponge from your mouth. Hold the device while it remainsupright on the table. Insert the swab into the device and press downfirmly while twisting the cap closed. Leave the device upright on thetable with the OralTox logo facing you.” An audio file for thecorresponding audio instructions can be stored on the processing device2100 or a server.

In an embodiment, at an eighth screen, the processing device 2100 candisplay instructions to wait for the drug test device 100 to generateresults. The on-screen instructions can be, for example, “Wait. Leavethe device upright on the table. Wait until you see results. Results mayvary.” A script for the audio instructions can be, for example, “Leaveit upright on the surface, no touching. Your device will process yoursaliva in approximately 2 minutes. [Pause for 1:50 minutes] WITHOUTtouching the device, look for red lines to appear on the strips. [Pause]Don't worry if some of the strips take longer than others. Some linesmay be faint and different colors.” The audio instructions can pause inthe middle of the script, where indicated with brackets. An audio filefor the corresponding audio instructions can be stored on the processingdevice 2100 or a server.

In an embodiment, at a ninth screen, the processing device 2100 candisplay instructions to confirm the results are displayed in the drugtest device 100. The on-screen instructions can be, for example, “Wait.Can you see one or two lines on every strip?” A script for the audioinstructions can be, for example, “Do not touch the device. Can youconfirm that you see at least one line on every strip?” An audio filefor the corresponding audio instructions can be stored on the processingdevice 2100 or a server.

In an embodiment, at a tenth screen, the processing device 2100 candisplay instructions to image the results. The on-screen instructionscan be, for example, “Leave the device upright on the table. Make surewe can clearly see the:” A script for the audio instructions can be, forexample, “Place the device in the recess labeled “B”. Tap I′m ready andthen take a photo of your results.” An audio file for the correspondingaudio instructions can be stored on the processing device 2100 or aserver.

In an embodiment, at an eleventh screen, the processing device 2100 candisplay instructions to confirm the captured image of the results. Theon-screen instructions can be, for example, “Can you see one or twolines on every strip? Note, some lines may be darker than others.” Ascript for the audio instructions can be, for example, “Are you happywith the photo? Can you see the red lines on the strips clearly? You canre-take the photo if needed.” An audio file for the corresponding audioinstructions can be stored on the processing device 2100 or a server.

In an embodiment, at a twelfth screen, the processing device 2100 candisplay instructions to wait and review the results. The on-screeninstructions can be, for example, “Don't go anywhere! The screen willupdate with instructions shortly.”

In an embodiment, at a thirteenth screen, the processing device 2100 candisplay instructions to save the drug test device 100 and clean thestation. The on-screen instructions can be, for example:

“Do not throw away your test

1. Wipe down your station and tablet

2. Throw away silver pouch and any other trash

3. Use some hand sanitizer

Deposit your test

1. Deposit your test kit in the bin labeled C

2. Proceed out the exit.”

A script for the audio instructions can be, for example, “Do not throwaway your test. You are almost done! 1. Wipe down your station andtablet. 2. Throw away silver pouch and any other trash. 3. Use some handsanitizer. Deposit your test kit in the bin labeled C and proceed outthe exit. Thank you!” An audio file for the corresponding audioinstructions can be stored on the processing device 2100 or a server.

In an embodiment, the results from the drug test device 100 can havesome results that are unclear, for example because of poor lightingconditions. In such an event, the results of the drug screening can besent to an administrator to adjudicate. The administrator can alsomonitor the applicant during the drug screening process. In anembodiment, the administrator can use a second processing device (suchas a computer) with an application installed to perform theadjudication. The second processing device can prompt the administratorto log in to the application and thereby certify the administrator ashaving clearance to adjudicate the drug test results. The secondprocessing device can prompt the administrator to select a location ofthe screening location the administrator wants to adjudicate resultsfor. In an embodiment, the administrator can adjudicate results formultiple locations and can switch between locations via, for example, adrop-down menu in the displayed prompt. The second processing device canretrieve all drug screening tests currently in progress and display theresults to the administrator. Each result can include, for example, thename of the applicant, a description of the step the applicant iscurrently on, and a total time of the drug screening test. Each resultcan be displayed as a card (or it can be displayed as a shape, a patch,or similar rendered digital object) on the display of the secondprocessing device.

In an embodiment, the applicant can request assistance with his/her drugscreening test and the processing device 2100 can transmit the requestto the second processing device. The second processing device canreceive the request for assistance and prompt the administrator to takeaction. For example, the second processing device can change anappearance of the card from white to red in color. Upon completion ofassisting the applicant, the second processing device can prompt theadministrator to input any comments regarding the interaction with theapplicant and his/her drug screening test. In an embodiment, theprocessing device 2100 can keep track of an elapsed time for theapplicant going through the drug screening test. Upon the elapsed timeexceeding a predetermined length, the processing device 2100 cantransmit a notification to the second processing device, and the secondprocessing device can alert the administrator by changing the appearanceof the card. For example, if the applicant exceeds a predetermined time(for example, 2 hours for the drug screening test, the card for theapplicant can change to yellow in color.

In an embodiment, when the results of the drug screening test are readyfor adjudication, the processing device 2100 can send a notification tothe second processing device and the second processing device can changethe appearance of the applicant's card to green in color. Theadministrator can click on the green card to begin adjudication.

In an embodiment, the second processing device can display an image ofthe test results from the drug test device 100 that was uploaded by theapplicant as well as a prompt to select what the administratordetermines to be a condition of the result of the drug screening testbased on the picture. The administrator can select among predeterminedoptions for the conditions, such as “Clear,” “Inconclusive,” and“Invalid,” wherein each condition can be accompanied by a schematicdemonstrating example patterns of stripes represented by each condition.In an embodiment, the administrator can select an option to have theapplicant re-take the photo. That is, for the re-take photo option, thesecond processing device will send a notification to the processingdevice 2100 to prompt the applicant to take another photo of theresults.

In an embodiment, the administrator can select the “Clear” condition andthe second processing device can prompt the administrator to certify theresults with an electronic signature of the administrator. Theadministrator can sign and submit the signature in the correspondingfield displayed by the second processing device.

In an embodiment, the administrator can select the “Inconclusive”condition and the second processing device can prompt the administratorto indicate which drug test strips have inconclusive results. Forexample, the second processing device can display a schematic of thedrug test device 100 having the drug test strips included therein,wherein the administrator can interact with the schematics of the drugtest strips. That is, the administrator can click on the schematics ofthe drug test strips that correspond to the position of the actual drugtest strip with inconclusive results. Again, the administrator canprovide the electronic signature to certify and submit thedetermination. Similarly, the administrator can change the adjudicateddetermination of a result by selecting, for example, a “ChangeAdjudication” link which can lead back to the schematic of the drug testdevice 100 with the schematics of the drug test strips.

In an embodiment, when the administrator adjudicates the condition as“Invalid,” the administrator can sign with the electronic signature tocertify and submit the determined result. Upon submitting the “Invalid”condition, the second processing device can send a notification to theprocessing device 2100 to instruct the applicant to contact theadministrator and obtain a second drug test device 100 and re-take thetest.

In an embodiment, once the test is complete, the applicant's card candisplay in a Completed Tests view on a dashboard in the application onthe second processing device. For example, the completed tests for acurrent day can display on the dashboard. For example, the administratorcan search for completed tests by an applicant's full first and lastname from, for example, the past 24 hours and 48 hours.

FIG. 23 is a flow chart for a method 2300, according to an embodiment ofthe present disclosure. In an embodiment, step S2305 is locating, viaprocessing circuitry, a label 150 in an image, the label 150 including aQR code, a bar code, and text displayed on the label. Step S2310 islocating, via the processing circuitry, the QR code on the label. StepS2315 is locating, via the processing circuitry, the bar code on thelabel. Step S2320 is locating, via the processing circuitry, the text onthe label. Step S2325 is locating, via the processing circuitry, aregion of the label including a test strip, the test strip configured todisplay a result of a drug screening test. Step S2330 is locating, viathe processing circuitry, the test strip in the region of the label.Step S2335 is detecting, via the processing circuitry, the resultdisplayed by the test strip.

Embodiments of the subject matter and the functional operationsdescribed in this specification are implemented by processing circuitry,in tangibly embodied computer software or firmware, in computerhardware, including the structures disclosed in this specification andtheir structural equivalents, or in combinations of one or more of them.Embodiments of the subject matter described in this specification can beimplemented as one or more computer programs, i.e., one or more modulesof computer program instructions encoded on a tangible non-transitoryprogram carrier for execution by, or to control the operation of a dataprocessing apparatus/device, (such as the processing device 2100, thesecond processing device, or the like). The computer storage medium canbe a machine-readable storage device, a machine-readable storagesubstrate, a random or serial access memory device, or a combination ofone or more of them.

The term “data processing apparatus' refers to data processing hardwareand may encompass all kinds of apparatus, devices, and machines forprocessing data, including by way of example a programmable processor, acomputer, or multiple processors or computers. The apparatus can also beor further include special purpose logic circuitry, e.g., an FPGA (fieldprogrammable gate array) or an ASIC (application-specific integratedcircuit). The apparatus can optionally include, in addition to hardware,code that creates an execution environment for computer programs, e.g.,code that constitutes processor firmware, a protocol stack, a databasemanagement system, an operating system, or a combination of one or moreof them.

A computer program, which may also be referred to or described as aprogram, software, a software application, a module, a software module,a script, or code, can be written in any form of programming language,including compiled or interpreted languages, or declarative orprocedural languages, and it can be deployed in any form, including as astand-alone program or as a module, component, Subroutine, or other unitsuitable for use in a computing environment. A computer program may, butneed not, correspond to a file in a file system. A program can be storedin a portion of a file that holds other programs or data, e.g., one ormore scripts stored in a markup language document, in a single filededicated to the program in question, or in multiple coordinated files,e.g., files that store one or more modules, sub-programs, or portions ofcode. A computer program can be deployed to be executed on one computeror on multiple computers that are located at one site or distributedacross multiple sites and interconnected by a communication network.

The processes and logic flows described in this specification can beperformed by one or more programmable computers executing one or morecomputer programs to perform functions by operating on input data andgenerating output. The processes and logic flows can also be performedby, and apparatus can also be implemented as, special purpose logiccircuitry, e.g., an FPGA an ASIC.

Computers suitable for the execution of a computer program include, byway of example, general or special purpose microprocessors or both, orany other kind of central processing unit. Generally, a CPU will receiveinstructions and data from a read-only memory or a random access memoryor both. Elements of a computer are a CPU for performing or executinginstructions and one or more memory devices for storing instructions anddata. Generally, a computer will also include, or be operatively coupledto receive data from or transfer data to, or both, one or more massstorage devices for storing data, e.g., magnetic, magneto-optical disks,or optical disks. However, a computer need not have such devices.Moreover, a computer can be embedded in another device, e.g., a mobiletelephone, a personal digital assistant (PDA), a mobile audio or videoplayer, a game console, a Global Positioning System (GPS) receiver, or aportable storage device, e.g., a universal serial bus (USB) flash drive,to name just a few. Computer-readable media suitable for storingcomputer program instructions and data include all forms of non-volatilememory, media and memory devices, including by way of examplesemiconductor memory devices, e.g., EPROM, EEPROM, and flash memorydevices; magnetic disks, e.g., internal hard disks or removable disks;magneto optical disks; and CD-ROM and DVD-ROM disks. The processor andthe memory can be supplemented by, or incorporated in, special purposelogic circuitry.

To provide for interaction with a user, embodiments of the subjectmatter described in this specification can be implemented on a computerhaving a display device, e.g., a CRT (cathode ray tube) or LCD (liquidcrystal display) monitor, for displaying information to the user and akeyboard and a pointing device, e.g., a mouse or a trackball, by whichthe user can provide input to the computer. Other kinds of devices canbe used to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, e.g.,visual feedback, auditory feedback, or tactile feedback; and input fromthe user can be received in any form, including acoustic, speech, ortactile input. In addition, a computer can interact with a user bysending documents to and receiving documents from a device that is usedby the user; for example, by sending web pages to a web browser on auser's device in response to requests received from the web browser.

Embodiments of the subject matter described in this specification can beimplemented in a computing system that includes a back-end component,e.g., as a data server, or that includes a middleware component, e.g.,an application server, or that includes a front-end component, e.g., aclient computer having a graphical user interface or a Web browserthrough which a user can interact with an implementation of the subjectmatter described in this specification, or any combination of one ormore Such back-end, middleware, or front-end components. The componentsof the system can be interconnected by any form or medium of digitaldata communication, e.g., a communication network. Examples ofcommunication networks include a local area network (LAN) and a widearea network (WAN), e.g., the Internet.

The computing system can include clients (user devices) and servers. Aclient and server are generally remote from each other and typicallyinteract through a communication network. The relationship of client andserver arises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other. In someembodiments, a server transmits data, e.g., an HTML page, to a userdevice, e.g., for purposes of displaying data to and receiving userinput from a user interacting with the user device, which acts as aclient. Data generated at the user device, e.g., a result of the userinteraction, can be received from the user device at the server.

An example of the processing device 2100 is shown in FIG. 24 . FIG. 24is a more detailed block diagram illustrating an exemplary electronicprocessing device, according to an embodiment of the present disclosure.In an embodiment, the processing device may be a smartphone. However,the skilled artisan will appreciate that the features described hereinmay be adapted to be implemented on other devices (e.g., a laptop, atablet, a server, an e-reader, a camera, a navigation device, etc.). Theprocessing device of FIG. 24 includes processing circuitry, as discussedabove. The processing circuitry includes one or more of the elementsdiscussed next with reference to FIG. 24 . The processing deviceincludes a controller 610 and a wireless communication processor 602connected to an antenna 601. A speaker 604 and a microphone 605 areconnected to a voice processor 603.

The controller 610 may include one or more processors (CPU, GPU, orother circuitry) and may control each element in the processing deviceto perform functions related to communication control, audio signalprocessing, graphics processing, control for the audio signalprocessing, still and moving image processing and control, and otherkinds of signal processing. The controller 610 may perform thesefunctions by executing instructions stored in a memory 650.Alternatively, or in addition to the local storage of the memory 650,the functions may be executed using instructions stored on an externaldevice accessed on a network or on a non-transitory computer readablemedium.

The memory 650 includes but is not limited to Read Only Memory (ROM),Random Access Memory (RAM), or a memory array including a combination ofvolatile and non-volatile memory units. The memory 650 may be utilizedas working memory by the controller 610 while executing the processesand algorithms of the present disclosure. Additionally, the memory 650may be used for long-term storage, e.g., of image data and informationrelated thereto.

The processing device includes a control line CL and data line DL asinternal communication bus lines. Control data to/from the controller610 may be transmitted through the control line CL. The data line DL maybe used for transmission of voice data, display data, etc.

The antenna 601 transmits/receives electromagnetic wave signals betweenbase stations for performing radio-based communication, such as thevarious forms of cellular telephone communication. The wirelesscommunication processor 602 controls the communication performed betweenthe processing device and other external devices via the antenna 601.For example, the wireless communication processor 602 may controlcommunication between base stations for cellular phone communication.

The speaker 604 emits an audio signal corresponding to audio datasupplied from the voice processor 603. The microphone 605 detectssurrounding audio and converts the detected audio into an audio signal.The audio signal may then be output to the voice processor 603 forfurther processing. The voice processor 603 demodulates and/or decodesthe audio data read from the memory 650 or audio data received by thewireless communication processor 602 and/or a short-distance wirelesscommunication processor 607. Additionally, the voice processor 603 maydecode audio signals obtained by the microphone 605.

The exemplary processing device may also include a display 620, a touchpanel 630, an operation key 640, and a short-distance communicationprocessor 607 connected to an antenna 606. The display 620 may be anLCD, an organic electroluminescence display panel, or another displayscreen technology. In addition to displaying still and moving imagedata, the display 620 may display operational inputs, such as numbers oricons which may be used for control of the processing device. Thedisplay 620 may additionally display a GUI for a user to control aspectsof the processing device and/or other devices. Further, the display 620may display characters and images received by the processing deviceand/or stored in the memory 650 or accessed from an external device on anetwork. For example, the processing device may access a network such asthe Internet and display text and/or images transmitted from a Webserver.

The touch panel 630 may include a physical touch panel display screenand a touch panel driver. The touch panel 630 may include one or moretouch sensors for detecting an input operation on an operation surfaceof the touch panel display screen. The touch panel 630 also detects atouch shape and a touch area. Used herein, the phrase “touch operation”refers to an input operation performed by touching an operation surfaceof the touch panel display with an instruction object, such as a finger,thumb, or stylus-type instrument. In the case where a stylus or the likeis used in a touch operation, the stylus may include a conductivematerial at least at the tip of the stylus such that the sensorsincluded in the touch panel 630 may detect when the stylusapproaches/contacts the operation surface of the touch panel display(similar to the case in which a finger is used for the touch operation).

In certain aspects of the present disclosure, the touch panel 630 may bedisposed adjacent to the display 620 (e.g., laminated) or may be formedintegrally with the display 620. For simplicity, the present disclosureassumes the touch panel 630 is formed integrally with the display 620and therefore, examples discussed herein may describe touch operationsbeing performed on the surface of the display 620 rather than the touchpanel 630. However, the skilled artisan will appreciate that this is notlimiting.

For simplicity, the present disclosure assumes the touch panel 630 is acapacitance-type touch panel technology. However, it should beappreciated that aspects of the present disclosure may easily be appliedto other touch panel types (e.g., resistance-type touch panels) withalternate structures. In certain aspects of the present disclosure, thetouch panel 630 may include transparent electrode touch sensors arrangedin the X-Y direction on the surface of transparent sensor glass.

The touch panel driver may be included in the touch panel 630 forcontrol processing related to the touch panel 630, such as scanningcontrol. For example, the touch panel driver may scan each sensor in anelectrostatic capacitance transparent electrode pattern in theX-direction and Y-direction and detect the electrostatic capacitancevalue of each sensor to determine when a touch operation is performed.The touch panel driver may output a coordinate and correspondingelectrostatic capacitance value for each sensor. The touch panel drivermay also output a sensor identifier that may be mapped to a coordinateon the touch panel display screen. Additionally, the touch panel driverand touch panel sensors may detect when an instruction object, such as afinger is within a predetermined distance from an operation surface ofthe touch panel display screen. That is, the instruction object does notnecessarily need to directly contact the operation surface of the touchpanel display screen for touch sensors to detect the instruction objectand perform processing described herein. For example, in an embodiment,the touch panel 630 may detect a position of a user's finger around anedge of the display panel 620 (e.g., gripping a protective case thatsurrounds the display/touch panel). Signals may be transmitted by thetouch panel driver, e.g. in response to a detection of a touchoperation, in response to a query from another element based on timeddata exchange, etc.

The touch panel 630 and the display 620 may be surrounded by aprotective casing, which may also enclose the other elements included inthe processing device. In an embodiment, a position of the user'sfingers on the protective casing (but not directly on the surface of thedisplay 620) may be detected by the touch panel 630 sensors.Accordingly, the controller 610 may perform display control processingdescribed herein based on the detected position of the user's fingersgripping the casing. For example, an element in an interface may bemoved to a new location within the interface (e.g., closer to one ormore of the fingers) based on the detected finger position.

Further, in an embodiment, the controller 610 may be configured todetect which hand is holding the processing device, based on thedetected finger position. For example, the touch panel 630 sensors maydetect a plurality of fingers on the left side of the processing device(e.g., on an edge of the display 620 or on the protective casing), anddetect a single finger on the right side of the processing device. Inthis exemplary scenario, the controller 610 may determine that the useris holding the processing device with his/her right hand because thedetected grip pattern corresponds to an expected pattern when theprocessing device is held only with the right hand.

The operation key 640 may include one or more buttons or similarexternal control elements, which may generate an operation signal basedon a detected input by the user. In addition to outputs from the touchpanel 630, these operation signals may be supplied to the controller 610for performing related processing and control. In certain aspects of thepresent disclosure, the processing and/or functions associated withexternal buttons and the like may be performed by the controller 610 inresponse to an input operation on the touch panel 630 display screenrather than the external button, key, etc. In this way, external buttonson the processing device may be eliminated in lieu of performing inputsvia touch operations, thereby improving watertightness.

The antenna 606 may transmit/receive electromagnetic wave signalsto/from other external apparatuses, and the short-distance wirelesscommunication processor 607 may control the wireless communicationperformed between the other external apparatuses. Bluetooth, IEEE802.11, and near-field communication (NFC) are non-limiting examples ofwireless communication protocols that may be used for inter-devicecommunication via the short-distance wireless communication processor607.

The processing device may include a motion sensor 608. The motion sensor608 may detect features of motion (i.e., one or more movements) of theprocessing device. For example, the motion sensor 608 may include anaccelerometer to detect acceleration, a gyroscope to detect angularvelocity, a geomagnetic sensor to detect direction, a geo-locationsensor to detect location, etc., or a combination thereof to detectmotion of the processing device. In an embodiment, the motion sensor 608may generate a detection signal that includes data representing thedetected motion. For example, the motion sensor 608 may determine anumber of distinct movements in a motion (e.g., from start of the seriesof movements to the stop, within a predetermined time interval, etc.), anumber of physical shocks on the processing device (e.g., a jarring,hitting, etc., of the electronic device), a speed and/or acceleration ofthe motion (instantaneous and/or temporal), or other motion features.The detected motion features may be included in the generated detectionsignal. The detection signal may be transmitted, e.g., to the controller610, whereby further processing may be performed based on data includedin the detection signal. The motion sensor 608 can work in conjunctionwith a Global Positioning System (GPS) section 660. The information ofthe present position detected by the GPS section 660 is transmitted tothe controller 610. An antenna 661 is connected to the GPS section 660for receiving and transmitting signals to and from a GPS satellite.

The processing device may include a camera section 609, which includes alens and shutter for capturing photographs of the surroundings aroundthe processing device. In an embodiment, the camera section 609 capturessurroundings of an opposite side of the processing device from the user.The images of the captured photographs can be displayed on the displaypanel 620. A memory section saves the captured photographs. The memorysection may reside within the camera section 609 or it may be part ofthe memory 650. The camera section 609 can be a separate featureattached to the processing device or it can be a built-in camerafeature.

An example of a type of computer is shown in FIG. 25 . The computer 700can be used for the operations described in association with any of thecomputer-implement methods described previously, according to oneimplementation. For example, the computer 700 can be an example of aserver, such as the one discussed above. The computer 700 includesprocessing circuitry, as discussed above. The processing circuitryincludes one or more of the elements discussed next with reference toFIG. 25 . In FIG. 25 , the computer 700 includes a processor 710, amemory 720, a storage device 730, and an input/output device 740. Eachof the components 710, 720, 730, and 740 are interconnected using asystem bus 750. The processor 710 is capable of processing instructionsfor execution within the system 700. In one implementation, theprocessor 710 is a single-threaded processor. In another implementation,the processor 710 is a multi-threaded processor. The processor 710 iscapable of processing instructions stored in the memory 720 or on thestorage device 730 to display graphical information for a user interfaceon the input/output device 740.

The memory 720 stores information within the computer 700. In oneimplementation, the memory 720 is a computer-readable medium. In oneimplementation, the memory 720 is a volatile memory. In anotherimplementation, the memory 720 is a non-volatile memory.

The storage device 730 is capable of providing mass storage for thesystem 700. In one implementation, the storage device 730 is acomputer-readable medium. In various different implementations, thestorage device 730 may be a floppy disk device, a hard disk device, anoptical disk device, or a tape device.

The input/output device 740 provides input/output operations for thecomputer 700. In one implementation, the input/output device 740includes a keyboard and/or pointing device. In another implementation,the input/output device 740 includes a display for displaying graphicaluser interfaces.

Embodiments of the subject matter and the functional operationsdescribed in this specification can be implemented in digital electroniccircuitry, in tangibly embodied computer Software or firmware, incomputer hardware, including the structures disclosed in thisspecification and their structural equivalents, or in combinations ofone or more of them. Embodiments of the subject matter described in thisspecification can be implemented as one or more computer programs, i.e.,one or more modules of computer program instructions encoded on atangible non-transitory program carrier for execution by, or to controlthe operation of data processing apparatus. Alternatively or inaddition, the program instructions can be encoded on an artificiallygenerated propagated signal, e.g., a machine-generated electrical,optical, or electromagnetic signal that is generated to encodeinformation for transmission to suitable receiver apparatus forexecution by a data processing apparatus. The computer storage mediumcan be a machine-readable storage device, a machine-readable storagesubstrate, a random or serial access memory device, or a combination ofone or more of them.

The term “data processing apparatus’ refers to data processing hardwareand encompasses all kinds of apparatus, devices, and machines forprocessing data, including by way of example a programmable processor, acomputer, or multiple processors or computers. The apparatus can also beor further include special purpose logic circuitry, e.g., an FPGA (fieldprogrammable gate array) or an ASIC (application-specific integratedcircuit). The apparatus can optionally include, in addition to hardware,code that creates an execution environment for computer programs, e.g.,code that constitutes processor firmware, a protocol stack, a databasemanagement system, an operating system, or a combination of one or moreof them.

A computer program, which may also be referred to or described as aprogram, Software, a software application, a module, a software module,a script, or code, can be written in any form of programming language,including compiled or interpreted languages, or declarative orprocedural languages, and it can be deployed in any form, including as astand-alone program or as a module, component, Subroutine, or other unitSuitable for use in a computing environment. A computer program may, butneed not, correspond to a file in a file system. A program can be storedin a portion of a file that holds other programs or data, e.g., one ormore Scripts stored in a markup language document, in a single filededicated to the program in question, or in multiple coordinated files,e.g., files that store one or more modules, Sub-programs, or portions ofcode. A computer program can be deployed to be executed on one computeror on multiple computers that are located at one site or distributedacross multiple sites and interconnected by a communication network.

The processes and logic flows described in this specification can beperformed by one or more programmable computers executing one or morecomputer programs to perform functions by operating on input data andgenerating output. The processes and logic flows can also be performedby, and apparatus can also be implemented as, special purpose logiccircuitry, e.g., an FPGA (field programmable gate array) or an ASIC(application-specific integrated circuit).

Computers suitable for the execution of a computer program include, byway of example, general or special purpose microprocessors or both, orany other kind of central processing unit. Generally, a centralprocessing unit will receive instructions and data from a read-onlymemory or a random-access memory or both. Elements of a computer includea central processing unit for performing or executing instructions andone or more memory devices for storing instructions and data. Generally,a computer will also include, or be operatively coupled to receive datafrom or transfer data to, or both, one or more mass storage devices forstoring data, e.g., magnetic, magneto-optical disks, or optical disks.However, a computer need not have Such devices. Moreover, a computer canbe embedded in another device, e.g., a mobile telephone, a personaldigital assistant (PDA), a mobile audio or video player, a game console,a Global Positioning System (GPS) receiver, or a portable storagedevice, e.g., a universal serial bus (USB) flash drive, to name just afew. Computer-readable media suitable for storing computer programinstructions and data include all forms of non-volatile memory, mediaand memory devices, including by way of example semiconductor memorydevices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks,e.g., internal hard disks or removable disks; magneto optical disks; andCD-ROM and DVD-ROM disks. The processor and the memory can beSupplemented by, or incorporated in, special purpose logic circuitry.

To provide for interaction with a user, embodiments of the subjectmatter described in this specification can be implemented on a computerhaving a display device, e.g., a CRT (cathode ray tube) or LCD (liquidcrystal display) monitor, for displaying information to the user and akeyboard and a pointing device, e.g., a mouse or a trackball, by whichthe user can provide input to the computer. Other kinds of devices canbe used to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, e.g.,visual feedback, auditory feedback, or tactile feedback; and input fromthe user can be received in any form, including acoustic, speech, ortactile input. In addition, a computer can interact with a user bysending documents to and receiving documents from a device that is usedby the user; for example, by sending web pages to a web browser on auser's device in response to requests received from the web browser.

Embodiments of the subject matter described in this specification can beimplemented in a computing system that includes a back-end component,e.g., as a data server, or that includes a middleware component, e.g.,an application server, or that includes a front-end component, e.g., aclient computer having a graphical user interface or a Web browserthrough which a user can interact with an implementation of the subjectmatter described in this specification, or any combination of one ormore Such back-end, middleware, or front-end components. The componentsof the system can be interconnected by any form or medium of digitaldata communication, e.g., a communication network. Examples ofcommunication networks include a local area network (LAN) and a widearea network (WAN), e.g., the Internet.

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other. In someembodiments, a server transmits data, e.g., an HTML page, to a userdevice, e.g., for purposes of displaying data to and receiving userinput from a user interacting with the user device, which acts as aclient. Data generated at the user device, e.g., a result of the userinteraction, can be received from the user device at the server.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of what may beclaimed, but rather as descriptions of features that may be specific toparticular embodiments.

Certain features that are described in this specification in the contextof separate embodiments can also be implemented in combination in asingle embodiment. Conversely, various features that are described inthe context of a single embodiment can also be implemented in multipleembodiments separately or in any suitable sub-combination. Moreover,although features may be described above as acting in certaincombinations and even initially claimed as such, one or more featuresfrom a claimed combination can in some cases be excised from thecombination, and the claimed combination may be directed to asub-combination or variation of a sub-combination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various system modulesand components in the embodiments described above should not beunderstood as requiring such separation in all embodiments, and itshould be understood that the described program components and systemscan generally be integrated together in a single software product orpackaged into multiple software products.

Particular embodiments of the subject matter have been described. Otherembodiments are within the scope of the following claims. For example,the actions recited in the claims can be performed in a different orderand still achieve desirable results. As one example, the processesdepicted in the accompanying figures do not necessarily require theparticular order shown, or sequential order, to achieve desirableresults. In some cases, multitasking and parallel processing may beadvantageous.

Next, a hardware description of a device according to exemplaryembodiments is described with reference to FIG. 26 . In FIG. 26 , thedevice, which can be the above described processing device or theserver, includes processing circuitry, as discussed above. Theprocessing circuitry includes one or more of the elements discussed nextwith reference to FIG. 26 . In FIG. 26 , the device/server includes aCPU 800 which performs the processes described above/below. The processdata and instructions may be stored in memory 802. These processes andinstructions may also be stored on a storage medium disk 804 such as ahard drive (HDD) or portable storage medium or may be stored remotely.Further, the claimed advancements are not limited by the form of thecomputer-readable media on which the instructions of the inventiveprocess are stored. For example, the instructions may be stored on CDs,DVDs, in FLASH memory, RAM, ROM, PROM, EPROM, EEPROM, hard disk or anyother information processing device with which the device communicates,such as a server or computer.

Further, the claimed advancements may be provided as a utilityapplication, background daemon, or component of an operating system, orcombination thereof, executing in conjunction with CPU 800 and anoperating system such as Microsoft Windows, UNIX, Solaris, LINUX, AppleMAC-OS and other systems known to those skilled in the art.

The hardware elements in order to achieve the device may be realized byvarious circuitry elements, known to those skilled in the art. Forexample, CPU 800 may be a Xenon or Core processor from Intel of Americaor an Opteron processor from AMD of America, or may be other processortypes that would be recognized by one of ordinary skill in the art.Alternatively, the CPU 800 may be implemented on an FPGA, ASIC, PLD orusing discrete logic circuits, as one of ordinary skill in the art wouldrecognize. Further, CPU 800 may be implemented as multiple processorscooperatively working in parallel to perform the instructions of theprocesses described above.

The device in FIG. 26 also includes a network controller 806, such as anIntel Ethernet PRO network interface card from Intel Corporation ofAmerica, for interfacing with network 851, and to communicate with aserver 850. As can be appreciated, the network 851 can be a publicnetwork, such as the Internet, or a private network such as an LAN orWAN network, or any combination thereof and can also include PSTN orISDN sub-networks. The network 851 can also be wired, such as anEthernet network, or can be wireless such as a cellular networkincluding EDGE, 3G, 4G and 5G wireless cellular systems. The wirelessnetwork can also be WiFi, Bluetooth, or any other wireless form ofcommunication that is known.

The device further includes a display controller 808, such as a NVIDIAGeForce GTX or Quadro graphics adaptor from NVIDIA Corporation ofAmerica for interfacing with display 810, such as an LCD monitor. Ageneral purpose I/O interface 812 interfaces with a keyboard and/ormouse 814 as well as a touch screen panel 816 on or separate fromdisplay 810. General purpose I/O interface also connects to a variety ofperipherals 818 including printers and scanners.

A sound controller 820 is also provided in the device to interface withspeakers/microphone 822 thereby providing sounds and/or music.

The general-purpose storage controller 824 connects the storage mediumdisk 804 with communication bus 826, which may be an ISA, EISA, VESA,PCI, or similar, for interconnecting all of the components of thedevice. A description of the general features and functionality of thedisplay 810, keyboard and/or mouse 814, as well as the displaycontroller 808, storage controller 824, network controller 806, soundcontroller 820, and general purpose I/O interface 812 is omitted hereinfor brevity as these features are known.

Obviously, numerous modifications and variations are possible in lightof the above teachings. It is therefore to be understood that within thescope of the appended claims, the embodiments may be practiced otherwisethan as specifically described herein.

Embodiments of the present disclosure may also be as set forth in thefollowing parentheticals.

(1) A method, comprising: locating, via processing circuitry, a label150 in an image, the label 150 including a QR code, a bar code, and textdisplayed on the label; locating, via the processing circuitry, the QRcode on the label; locating, via the processing circuitry, the bar codeon the label; locating, via the processing circuitry, the text on thelabel; locating, via the processing circuitry, a region of the label 150including a test strip, the test strip configured to display a result ofa drug screening test; locating, via the processing circuitry, the teststrip in the region of the label; and detecting, via the processingcircuitry, the result displayed by the test strip.

(2) The method of (1), further comprising generating, via the processingcircuitry, a determination based on the detected result of the teststrip, the determination related to a presence of a chemical in a fluidof a user.

(3) The method of either (1) or (2), further comprising applying, viathe processing circuitry, image thresholding to convert pixels of theimage into a black or a white color based on whether a pixel value ofthe pixel is above a predetermined pixel value threshold value.

(4) The method of any one of (1) to (3), wherein the pixel value is anintensity of a red-blue-green value of the pixel.

(5) The method of any one of (1) to (4), further comprising applying,via the processing circuitry, contour detection to locate the QR code,the bar code, the text, and the test strip result.

(6) The method of any one of (1) to (5), wherein the QR code, the barcode, the text, and the test strip are arranged on the label 150 havinga fixed arrangement relative to one another.

(7) The method of any one of (1) to (6), wherein the locating, via theprocessing circuitry, the bar code on the label 150 further comprisesdetermining the location of the QR code and an expected location of thebar code on the label 150 based on the location of the QR code; andsearching the expected location of the bar code on the label.

(8) The method of any one of (1) to (7), wherein the locating, via theprocessing circuitry, the bar code on the label 150 further comprisesdetermining the location of the text and an expected location of the barcode on the label 150 based on the location of the text; and searchingthe expected location of the bar code on the label.

(9) The method of any one of (1) to (8), wherein the locating, via theprocessing circuitry, the QR code on the label 150 further comprisesdetermining the location of the bar code and an expected location of theQR code on the label 150 based on the location of the bar code; andsearching the expected location of the QR code on the label.

(10) The method of any one of (1) to (9), wherein the locating, via theprocessing circuitry, the QR code on the label 150 further comprisesdetermining the location of the text and an expected location of the QRcode on the label 150 based on the location of the text; and searchingthe expected location of the QR code on the label.

(11) The method of any one of (1) to (10), wherein the locating, via theprocessing circuitry, the region of the label 150 including the teststrip further comprises determining the location of the QR code and anexpected location of the region of the label 150 including the teststrip based on the location of the QR code; and searching the expectedlocation of the region of the label 150 including the test strip.

(12) The method of any one of (1) to (11), wherein the locating, via theprocessing circuitry, the region of the label 150 including the teststrip further comprises determining the location of the bar code and anexpected location of the region of the label 150 including the teststrip based on the location of the bar code; and searching the expectedlocation of the region of the label 150 including the test strip.

(13) A method, comprising: instructing an applicant to perform a drugscreen test by obtaining a fluid sample from an applicant; obtaining adrug test result based on the fluid sample; and obtaining, via a firstdevice, an image of the obtained drug test result; detecting, via thefirst device, the drug test result from the image of the drug testresult; generating, via the first device, a first determination based onthe detected drug test result; transmitting, via the first device, theimage of the drug test result and the determination to a second device;displaying, via the second device, the image of the drug rest result toan administrator; obtaining, via the administrator, a seconddetermination based on the image of the drug test result; upondetermining the first determination and the second determination are thesame, confirming the drug test result; upon determining the firstdetermination and the second determination are not the same, determiningwhether the detected drug test result is invalid; upon determining thedetected drug test result is invalid, communicating with the firstdevice to instruct the applicant to perform the drug screen test again;upon determining the first determination and the second determinationare not the same, determining whether the detected drug test result isinconclusive; and upon determining the detected drug test result isinvalid, requesting the administrator adjudicate the detected drugresult.

(15) A device, comprising: a base; a mount 2110 attached to the base,the mount 2110 including a backplate 2125, a bottom platform 2115 formedperpendicular to the backplate 2125 along a bottom of the backplate2125, the bottom platform 2115 including a retention wall formed as partof the bottom platform 2115 distant from the portion of the bottomplatform 2115 attached to the backplate 2125, the retention wall beingperpendicular to the bottom platform 2115, and a first side arm 2120formed as part of the backplate 2125 along a side of the backplate 2125and extending outwards from the backplate 2125, and a notch 2130 holderformed as part of the base, the notch 2130 holder configured to secure adrug test device 100 to the base.

(16) The device of (15), wherein the mount 2110 is configured to securethe processing device at a predetermined angle relative to a plane ofthe base.

(17) The device of either (15) or (16), wherein the holder is configuredto secure the drug test device 100 at a predetermined angle relative toa plane of the base.

(18) The device of any one of (15) to (17), wherein the predeterminedangle of the secured drug test is the same as a predetermined angle ofthe processing device secured to the mount 2110 relative to the plane ofthe base.

(19) The device of any one of (15) to (18), further comprising a lightsource 2135 attached to the mount 2110.

(20) The device of any one of (15) to (19), wherein the light source2135 is integrated into the mount 2110.

(21) The device of any one of (15) to (20), wherein the light source2135 is integrated into the first side arm 2120.

(22) The device of any one of (15) to (21), wherein the first side arm2120 includes an angle rotation drum, the light source 2135 being formedas part of the angle rotation drum, the angle rotation drum configuredto rotate about an axis of the drum and adjust an angle of the lightsource 2135.

(23) The device of any one of (15) to (22), wherein the light source2135 is configured to activate when a camera of the processing deviceobtains an image of the drug test device 100.

(24) The device of any one of (15) to (23), further comprising aprocessing device, the mount 2110 configured to receive the processingdevice in the mount 2110 wherein a first surface of the processingdevice abuts the backplate 2125, a first edge of the processing deviceabuts the bottom platform 2115, and a second edge of the processingdevice abuts the first side arm 2120.

(25) The device of any one of (15) to (24), wherein the processingdevice includes a camera, the camera being oriented at an angle equal toan angle of the backplate 2125.

(26) The device of any one of (15) to (25), wherein the camera of theprocessing device is angled at the drug test device 100 secured in thenotch holder.

Thus, the foregoing discussion discloses and describes merely exemplaryembodiments. As will be understood by those skilled in the art, thepresent disclosure may be embodied in other specific forms withoutdeparting from the spirit or essential characteristics thereof.Accordingly, the disclosure is intended to be illustrative, but notlimiting of the scope of thereof, as well as other claims. Thedisclosure, including any readily discernible variants of the teachingsherein, defines, in part, the scope of the foregoing claim terminologysuch that no inventive subject matter is dedicated to the public.

1. An apparatus, comprising: a base; a mount attached to the base, themount including a backplate, a bottom platform formed perpendicular tothe backplate along a bottom of the backplate, the bottom platformincluding a retention wall formed as part of the bottom platform distantfrom the portion of the bottom platform attached to the backplate, theretention wall being perpendicular to the bottom platform, and a firstside arm formed as part of the backplate along a side of the backplateand extending outwards from the backplate; and a notch holder formed aspart of the base, the notch holder configured to secure a container tothe base.
 2. The apparatus of claim 1, wherein the mount is configuredto secure the processing device at a predetermined angle relative to aplane of the base.
 3. The apparatus of claim 1, wherein the holder isconfigured to secure the container at a predetermined angle relative toa plane of the base.
 4. The apparatus of claim 1, wherein thepredetermined angle of the secured container is the same as apredetermined angle of the processing device secured to the mountrelative to the plane of the base.
 5. The apparatus of claim 1, furthercomprising a light source attached to the mount.
 6. The apparatus ofclaim 5, wherein the light source is integrated into the mount.
 7. Theapparatus of claim 5, wherein the light source is integrated into thefirst side arm.
 8. The apparatus of claim 5, wherein the first side armincludes an angle rotation drum, the light source being formed as partof the angle rotation drum, the angle rotation drum configured to rotateabout an axis of the drum and adjust an angle of the light source. 9.The apparatus of claim 5, wherein the light source is configured toactivate when a camera of the processing device obtains an image of thecontainer.
 10. The apparatus of claim 1, further comprising a processingdevice, the mount configured to receive the processing device in themount wherein a first surface of the processing device abuts thebackplate, a first edge of the processing device abuts the bottomplatform, and a second edge of the processing device abuts the firstside arm.
 11. The apparatus of claim 10, wherein the processing deviceincludes a camera, the camera being oriented at an angle equal to anangle of the backplate.
 12. The apparatus of claim 11, wherein thecamera of the processing device is angled at the container secured inthe notch holder.